/*! normalize.css v4.2.0 | MIT License | github.com/necolas/normalize.css */
html {
    font-family: sans-serif;
    line-height: 1.15;
    -ms-text-size-adjust: 100%
}

body {
    margin: 0
}

article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
    display: block
}

audio, canvas, progress, video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

progress {
    vertical-align: baseline
}

[hidden], template {
    display: none
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects
}

a:active, a:hover {
    outline-width: 0
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}

b, strong {
    font-weight: inherit;
    font-weight: bolder
}

dfn {
    font-style: italic
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

mark {
    background-color: #ff0;
    color: #000
}

small {
    font-size: 80%
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

img {
    border-style: none
}

svg:not(:root) {
    overflow: hidden
}

code, kbd, pre, samp {
    font-family: monospace, monospace;
    font-size: 1em
}

figure {
    margin: 1em 40px
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

button, input, optgroup, select, textarea {
    font: inherit;
    margin: 0
}

optgroup {
    font-weight: 700
}

button, input {
    overflow: visible
}

button, select {
    text-transform: none
}

[type=reset], [type=submit], button, html [type=button] {
    -webkit-appearance: button
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
    border-style: none;
    padding: 0
}

[type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring, button:-moz-focusring {
    outline: 1px dotted ButtonText
}

fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: .35em .625em .75em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

textarea {
    overflow: auto
}

[type=checkbox], [type=radio] {
    box-sizing: border-box;
    padding: 0
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-input-placeholder {
    color: inherit;
    opacity: .54
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

*, :after, :before {
    box-sizing: border-box
}

html {
    font-family: SourceSansPro, sans-serif;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    scroll-behavior: smooth
}

body {
    overflow-x: hidden;
    background-color: #fff
}

body::-moz-selection, body ::-moz-selection {
    color: #fff;
    background: #6640fe
}

body::selection, body ::selection {
    color: #fff;
    background: #6640fe
}

body.no-scroll {
    overflow-y: hidden
}

@media only screen and (min-width: 80em) {
    body.no-scroll {
        overflow-y: auto
    }
}

img, svg {
    vertical-align: top
}

img {
    height: auto;
    max-width: 100%
}

button, input, select, textarea {
    font-family: inherit
}

button {
    cursor: pointer
}

a {
    color: #6640fe;
    transition: color .25s ease-out, box-shadow .25s ease-out;
    font-weight: 600;
    text-decoration: underline
}

a:hover {
    color: #2c01d7
}

a:active {
    color: #911a10
}

a:hover {
    cursor: pointer
}

a:focus {
    outline: 0
}

a:not([class]) {
    box-shadow: 0 0 0 2px transparent
}

a:not([class]):focus {
    box-shadow: 0 0 0 2px #fc440f;
    outline: none
}

a:not([class]):focus:active {
    box-shadow: 0 0 0 2px transparent
}

a:not([class]):focus-visible {
    box-shadow: 0 0 0 2px #fc440f;
    outline: none
}

a:not([class]):focus-visible:active, a:not([class]):focus:not(:focus-visible) {
    box-shadow: 0 0 0 2px transparent
}

ol, ul {
    padding: 0;
    margin: 0;
    list-style: none
}

:not(input):focus, [tabindex], a, button {
    -webkit-tap-highlight-color: transparent
}

@media (pointer: coarse) {
    :not(input):focus, [tabindex], a, button {
        -webkit-touch-callout: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none
    }
}

:not(input):focus p, [tabindex] p, a p, button p {
    -webkit-user-select: text;
    -moz-user-select: text;
    -ms-user-select: text;
    user-select: text
}

html {
    font-size: 112.5%;
    line-height: 1.3888888889;
    color: #0c0c30
}

body {
    font-size: 18px;
    font-family: SourceSansPro, sans-serif;
    font-weight: 400
}

h1, h2, h3, h4, h5, h6 {
    margin: 0 0 16px
}

.heading-text, h1, h2, h3, h4, h5, h6, thead {
    font-family: Agrandir, sans-serif;
    font-style: inherit;
    font-weight: 800
}

blockquote {
    font-family: Agrandir, sans-serif;
    font-style: italic;
    font-weight: inherit;
    text-transform: inherit
}

h1 {
    font-size: 50px;
    font-size: 2.7777777778rem
}

h2 {
    font-size: 32px;
    font-size: 1.7777777778rem;
    text-align: center;
    align-self: center;
    color: #212121
}

h3 {
    font-size: 28px;
    font-size: 1.5555555556rem
}

h4 {
    font-size: 20px;
    font-size: 1.1111111111rem
}

h5 {
    font-size: 18px;
    font-size: 1rem
}

thead {
    font-weight: 700
}

small {
    font-size: 14px;
    font-size: .7777777778rem
}

p {
    -webkit-margin-before: 8px;
    margin-block-start: 8px;
    -webkit-margin-after: 8px;
    margin-block-end: 8px
}

tbody {
    font-size: 20px;
    font-size: 1.1111111111rem
}

ul:not([class]) {
    margin: 16px auto
}

ul:not([class]) li:before {
    content: "•";
    margin-right: 16px
}

ul:not([class]) li {
    padding-left: 20px;
    text-indent: -20px
}

ol:not([class]) li:nth-child(n+2), ul:not([class]) li:nth-child(n+2) {
    margin-top: 4px
}

.sf-heading {
    font-size: 32px;
    font-size: 1.7777777778rem;
    font-weight: 800;
    color: #6640fe
}

.sf-quote {
    font-size: 18px;
    font-size: 1rem;
    color: #fff;
    line-height: 1.44
}

.list ol {
    margin: 16px auto;
    counter-reset: li
}

.list ol li:before {
    content: counter(li) ".";
    display: inline-block;
    width: .7em
}

.list ol li {
    counter-increment: li;
    padding-left: 1.7em;
    text-indent: -.8em
}

.override-ul li:before {
    content: none;
    margin-right: 0
}

.override-ul li {
    text-indent: 0
}

@font-face {
    font-family: Agrandir;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("Agrandir-Regular.11a4ceb99823.woff2") format("woff2")
}

@font-face {
    font-family: Agrandir;
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("Agrandir-Bold.5adcade67872.woff2") format("woff2")
}

@font-face {
    font-family: Agrandir;
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url("Agrandir-Heavy.2fd076131b76.woff2") format("woff2")
}

@font-face {
    font-family: SourceSansPro;
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("source-sans-pro-v14-latin-regular.899c8f78ce65.woff2") format("woff2"), url("../fonts/source-sans-pro-v14-latin-regular.5cc3aae674ea.woff") format("woff")
}

@font-face {
    font-family: SourceSansPro;
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url("source-sans-pro-v14-latin-600.c85615b29630.woff2") format("woff2"), url("../fonts/source-sans-pro-v14-latin-600.a75563d7b9e5.woff") format("woff")
}

.arguments {
    padding: 60px 0 80px;
    margin: auto
}

@media only screen and (min-width: 48em) {
    .arguments {
        padding: 80px 0 120px
    }
}

.heading-block + .arguments {
    padding-top: 0
}

@media only screen and (min-width: 64em) {
    .arguments {
        max-width: 1384px;
        padding-right: 60px;
        padding-left: 60px;
        margin-right: auto;
        margin-left: auto
    }
}

.arguments__heading-container {
    margin: auto;
    padding: 0 20px
}

@media only screen and (min-width: 48em) {
    .arguments__heading-container--subheading {
        display: grid;
        grid-template-columns:20% auto;
        grid-column-gap: 30px
    }
}

.arguments__heading {
    color: #6640fe
}

@media only screen and (min-width: 48em) {
    .arguments__heading {
        width: 50%
    }
}

.arguments__heading--lone {
    margin-bottom: 0
}

.arguments__sub-heading {
    margin-top: 32px
}

@media only screen and (min-width: 48em) {
    .arguments__sub-heading {
        margin-top: 0
    }
}

.arguments__container {
    margin: 0 55px
}

.arguments__container.arguments__container--large {
    grid-auto-flow: unset;
    grid-template-columns:repeat(2, 1fr);
    -moz-column-gap: 130px;
    column-gap: 130px
}

@media only screen and (min-width: 64em) {
    .arguments__container.arguments__container--large {
        grid-template-columns:repeat(4, 1fr);
        grid-auto-flow: column;
        -moz-column-gap: 32px;
        column-gap: 32px
    }
}

@media only screen and (min-width: 30em) {
    .arguments__container {
        margin: 0 80px
    }
}

@media only screen and (min-width: 40em) {
    .arguments__container {
        margin: 0 55px
    }
}

@media only screen and (min-width: 48em) {
    .arguments__container {
        display: grid;
        grid-auto-flow: column;
        grid-auto-columns: 1fr;
        justify-content: center;
        align-content: center;
        -moz-column-gap: 24px;
        column-gap: 24px
    }
}

@media only screen and (min-width: 64em) {
    .arguments__container {
        -moz-column-gap: 120px;
        column-gap: 120px;
        margin: 0 auto
    }
}

.arguments .argument {
    padding-left: 0;
    margin-top: 64px
}

.arguments .argument__title-cell {
    display: flex;
    position: relative
}

@media only screen and (min-width: 48em) {
    .arguments .argument__title-cell {
        min-height: 3em
    }
}

.arguments .argument__title {
    color: #6640fe;
    position: relative;
    z-index: 2;
    display: block;
    font-family: Agrandir, sans-serif;
    margin: 0
}

@media only screen and (min-width: 48em) {
    .arguments .argument__title {
        max-width: 240px
    }
}

.arguments .argument__description-cell {
    position: relative;
    z-index: 2
}

.arguments .argument__icon {
    position: absolute;
    top: -24px;
    right: 0;
    z-index: 1;
    fill: #fedacf
}

.arguments .argument__link {
    color: #2f2f8e;
    box-shadow: 0 0 0 2px transparent;
    display: inline-flex;
    align-items: baseline;
    box-sizing: content-box;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    max-width: 100%;
    margin: -7px -12px;
    padding: 7px 12px;
    border-radius: 10em;
    box-shadow: 0 0 0 1px transparent;
    margin-top: 0 !important
}

.arguments .argument__link:hover {
    color: #060614
}

.arguments .argument__link:active {
    color: #911a10
}

.arguments .argument__link:focus {
    box-shadow: 0 0 0 2px #fc440f;
    outline: none
}

.arguments .argument__link:focus:active {
    box-shadow: 0 0 0 2px transparent
}

.arguments .argument__link:focus-visible {
    box-shadow: 0 0 0 2px #fc440f;
    outline: none
}

.arguments .argument__link:focus-visible:active, .arguments .argument__link:focus:not(:focus-visible) {
    box-shadow: 0 0 0 2px transparent
}

.arguments .argument__link:before {
    content: "";
    min-height: 13px;
    min-width: 13px;
    -webkit-mask-image: url();
    mask-image: url();
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    margin-right: 8px;
    transition: all .25s ease;
    transform: translateX(0);
    background-color: #fc440f
}

.arguments .argument__link:active:before, .arguments .argument__link:focus:hover:before, .arguments .argument__link:hover:before {
    background-color: #911a10;
    transform: translateX(6px)
}

.arguments .argument__link:focus {
    box-shadow: 0 0 0 1px #fc440f
}

.arguments .argument__link:focus:before {
    background-color: #fc440f
}

.arguments .argument__link:focus:active {
    box-shadow: 0 0 0 1px transparent
}

.arguments .argument__link:focus-visible {
    box-shadow: 0 0 0 1px #fc440f !important
}

.arguments__wrapper-button {
    text-align: center;
    margin: 60px 0 0;
    padding: 0 60px
}

.badge {
    font-size: 14px;
    font-size: .7777777778rem;
    display: inline-block;
    height: 25px;
    border-radius: 7px 0 7px 0;
    box-sizing: border-box;
    padding: 4px 11px;
    vertical-align: super;
    white-space: nowrap;
    font-weight: 400;
    text-transform: uppercase;
    color: #0d0b30
}

@media only screen and (min-width: 40em) {
    .badge {
        vertical-align: top
    }
}

.badge--red-200 {
    background-color: #feb49f
}

.badge--black-100, .badge--over {
    background-color: #d3d3d3
}

.badge--green-100 {
    background-color: #ccfcec
}

.badge--green-200 {
    background-color: #99f9d9
}

.badge--green-500 {
    background-color: #00ef9f
}

.badge--blue-200 {
    background-color: #777790
}

.badge--purple-200 {
    background-color: #c2b3ff
}

.badge--yellow-200 {
    background-color: #fffec9
}

.badge--corpo {
    background-color: #0d0b30;
    color: #fff
}

.badge--corpo::-moz-selection, .badge--corpo ::-moz-selection {
    color: #212121;
    background: rgba(255, 253, 119, .99)
}

.badge--corpo::selection, .badge--corpo ::selection {
    color: #212121;
    background: rgba(255, 253, 119, .99)
}

.badge--release {
    background-color: #555574;
    color: #fffd77;
    font-weight: 700;
    line-height: 1.1
}

.badge--program {
    border: 1px solid #0d0b30;
    margin-bottom: 16px;
    line-height: 1.1;
    text-transform: uppercase
}

@media only screen and (min-width: 48em) {
    .badge--program {
        margin-bottom: 0
    }
}

.badge--program.badge--blue-200 {
    color: #fff
}

.badge--promo {
    background-color: #6640fe;
    font-family: Agrandir, sans-serif;
    font-weight: 700;
    text-align: center;
    color: #fff
}

.badge--promo::-moz-selection, .badge--promo ::-moz-selection {
    color: #212121;
    background: rgba(255, 253, 119, .99)
}

.badge--promo::selection, .badge--promo ::selection {
    color: #212121;
    background: rgba(255, 253, 119, .99)
}

.badge--promo-vertical .badge--promo {
    line-height: 28px;
    height: 100%;
    width: 69px;
    border-radius: 0 0 7px 7px
}

.badge--promo-vertical {
    position: absolute;
    left: 0;
    top: 69px;
    height: 25px;
    transform: rotate(-90deg);
    transform-origin: top left;
    cursor: vertical-text
}

.badge--promo-vertical .badge {
    padding: 0
}

.badge--promo-secondary {
    background-color: #f4b942;
    vertical-align: middle
}

.call-to-action__inner, .footer__inner, .grid, .hero__wrapper {
    display: flex;
    flex-wrap: wrap
}

.call-to-action__inner > *, .footer__inner > *, .grid > *, .hero__wrapper > * {
    flex-basis: calc(100% - 20px)
}

@media only screen and (min-width: 30em) {
    .call-to-action__inner > *, .footer__inner > *, .grid > *, .hero__wrapper > * {
        flex-basis: calc(50% - 20px)
    }
}

@media (min-width: 1024px) {
    .call-to-action__inner > *, .footer__inner > *, .grid > *, .hero__wrapper > * {
        flex-basis: calc(30% - 20px)
    }
}

.grid--narrow {
    text-align: center
}

@media only screen and (min-width: 48em) {
    .grid--narrow {
        text-align: left
    }
}

@supports (display:grid) {
    .call-to-action__inner, .footer__inner, .grid, .hero__wrapper {
        display: grid;
        grid-column-gap: 4px;
        grid-template-columns:repeat(12, 1fr);
        width: 100%;
        margin: 0 auto
    }

    @media only screen and (min-width: 30em) {
        .call-to-action__inner, .footer__inner, .grid, .hero__wrapper {
            grid-column-gap: 5px
        }
    }@media only screen and (min-width: 40em) {
    .call-to-action__inner, .footer__inner, .grid, .hero__wrapper {
        grid-column-gap: 5px
    }
}@media only screen and (min-width: 48em) {
    .call-to-action__inner, .footer__inner, .grid, .hero__wrapper {
        grid-column-gap: 5px
    }
}@media only screen and (min-width: 64em) {
    .call-to-action__inner, .footer__inner, .grid, .hero__wrapper {
        grid-column-gap: 20px
    }
}@media only screen and (min-width: 80em) {
    .call-to-action__inner, .footer__inner, .grid, .hero__wrapper {
        grid-column-gap: 20px
    }
}@media only screen and (min-width: 83.5em) {
    .call-to-action__inner, .footer__inner, .grid, .hero__wrapper {
        grid-column-gap: 20px
    }
}@media only screen and (min-width: 120em) {
    .call-to-action__inner, .footer__inner, .grid, .hero__wrapper {
        grid-column-gap: 20px
    }
}@media only screen and (min-width: 159.75em) {
    .call-to-action__inner, .footer__inner, .grid, .hero__wrapper {
        grid-column-gap: 20px
    }
}.call-to-action__inner > *, .footer__inner > *, .grid > *, .hero__wrapper > * {
     flex-basis: auto
 }

    .grid--narrow {
        justify-content: center;
        text-align: center;
        grid-template-columns:repeat(auto-fit, minmax(200px, 200px))
    }

    @media only screen and (min-width: 48em) {
        .grid--narrow {
            justify-content: flex-start;
            text-align: left
        }
    }
}

.button {
    font-size: .7777777778rem;
    min-width: 190px;
    height: 51px;
    padding: 0 20px;
    background-color: #0d0b30;
    box-shadow: 0 0 0 0 #0d0b30;
    border: 1px solid transparent;
    background-image: none;
    color: #fff;
    font-family: Agrandir, sans-serif;
    font-weight: 700;
    text-decoration: none;
    transition: box-shadow .25s ease, transform .25s ease, background-color .1s ease, color .1s ease;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center
}

.button:focus {
    border: 1px solid #0c0c30;
    outline: 0
}

.button:focus:active, :active .button:focus {
    box-shadow: none
}

.button:focus:not(:focus-visible) {
    outline: none;
    box-shadow: none
}

.button:focus:hover, .button:hover {
    color: #fff;
    background-color: rgb(205, 131, 53);
}

.button:active {
    color: #fff;
    background-color: #3939b7;
    box-shadow: none
}

.button:active:hover, :hover > .button:active {
    transform: none;
    transition: none;
    box-shadow: none
}

.button--secondary {
    color: #fff;
    background-color: #6640fe;
    border: 1px solid #0c0c30
}

.button--secondary:focus:hover, .button--secondary:hover {
    color: #0d0b30;
    background-color: #fffd77
}

.button--secondary:active {
    color: #0d0b30;
    background-color: #e2d96d;
    box-shadow: none
}

.button--secondary:focus {
    box-shadow: 0 0 0 3px #fc440f
}

.button--tertiary {
    color: #0d0b30;
    background-color: #fff;
    border: 1px solid #0c0c30
}

.button--tertiary:focus:hover, .button--tertiary:hover {
    color: #0d0b30;
    background-color: #00ef9f
}

.button--tertiary:active {
    color: #0d0b30;
    background-color: #00ce84;
    box-shadow: none
}

.button--tertiary:focus {
    color: #0d0b30;
    box-shadow: 0 0 0 3px #fc440f
}

.button-menu-toggle {
    position: relative;
    z-index: 1;
    display: block;
    width: 40px;
    height: 30px;
    margin-top: 5px;
    background: transparent;
    border: 0;
    transform: rotate(0deg);
    transition: .25s ease-out
}

.button-menu-toggle__line {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 4px;
    background: #fff;
    opacity: 1;
    transform: rotate(0deg);
    transition: top, width, opacity, transform, left, .25s ease-out
}

.button-menu-toggle__line:first-child {
    top: 0
}

.is-open .button-menu-toggle__line:first-child {
    top: 10px;
    left: 50%;
    width: 0
}

.button-menu-toggle__line:nth-child(2), .button-menu-toggle__line:nth-child(3) {
    top: 12px;
    opacity: .25
}

.is-open .button-menu-toggle__line:nth-child(2), .is-open .button-menu-toggle__line:nth-child(3) {
    opacity: 1
}

.is-open .button-menu-toggle__line:nth-child(2) {
    transform: rotate(45deg)
}

.is-open .button-menu-toggle__line:nth-child(3) {
    transform: rotate(-45deg)
}

.button-menu-toggle__line:nth-child(4) {
    top: 24px
}

.is-open .button-menu-toggle__line:nth-child(4) {
    top: 10px;
    left: 50%;
    width: 0
}

.button-short {
    font-size: 14px;
    font-size: .7777777778rem;
    background-color: #6640fe;
    color: #fff;
    border-radius: 5px;
    border: 1px solid #6640fe;
    cursor: pointer;
    height: 42px;
    font-weight: 400;
    margin-right: 16px;
    min-width: 59px;
    padding: 0 12px;
    text-decoration: none;
    transition: transform .25s ease-out, background-color .1s ease, color .1s ease, border .25s ease-out;
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.button-short:hover {
    background-color: #fffd77;
    color: #0d0b30;
    border: 1px solid #0c0c30
}

.button-short:active {
    background-color: #e2d96d;
    color: #0d0b30;
    border: 1px solid #0c0c30
}

.button-short:focus {
    border: 3px solid #fc440f;
    outline: none
}

.button-short:focus:not(:focus-visible) {
    border: 1px solid #0c0c30
}

.call-to-action {
    padding-top: 60px;
    padding-bottom: 80px
}

@media only screen and (min-width: 48em) {
    .call-to-action {
        padding-top: 80px;
        padding-bottom: 120px
    }
}

@media only screen and (min-width: 64em) {
    .call-to-action {
        margin-right: auto;
        margin-left: auto
    }
}

.heading-block + .call-to-action {
    padding-top: 0
}

.call-to-action::-moz-selection, .call-to-action ::-moz-selection {
    color: #212121;
    background: rgba(255, 253, 119, .99)
}

.call-to-action::selection, .call-to-action ::selection {
    color: #212121;
    background: rgba(255, 253, 119, .99)
}

@media only screen and (min-width: 64em) {
    .call-to-action {
        max-width: 1080px;
        padding-right: 60px;
        padding-left: 60px;
        margin-right: auto;
        margin-left: auto
    }
}

.call-to-action__inner {
    font-weight: 800;
    background-color: #6640fe;
    border-top-left-radius: 30px;
    border-bottom-right-radius: 30px;
    padding: 60px 0;
    grid-row-gap: 32px
}

@media only screen and (min-width: 48em) {
    .call-to-action__inner {
        padding: 80px 0
    }
}

@media only screen and (min-width: 64em) {
    .call-to-action__inner {
        justify-content: space-between;
        border-top-left-radius: 40px;
        border-bottom-right-radius: 40px
    }
}

.call-to-action__title {
    font-size: 40px;
    font-size: 2.2222222222rem;
    grid-column: 2/span 10;
    font-family: Agrandir, sans-serif;
    font-weight: 800;
    line-height: 1.13;
    color: #fff
}

@media only screen and (min-width: 48em) {
    .call-to-action__title {
        grid-column: 2/span 4
    }
}

.call-to-action__intro {
    display: flex;
    flex-direction: column;
    grid-column: 2/span 10
}

.call-to-action__intro p {
    color: #fff;
    font-weight: 400
}

.call-to-action__intro a:not(.call-to-action__link) {
    color: #fff;
    box-shadow: 0 0 0 2px transparent;
    padding: 0;
    margin: 0
}

.call-to-action__intro a:not(.call-to-action__link):hover {
    color: #fffd77
}

.call-to-action__intro a:not(.call-to-action__link):active {
    color: #fff
}

.call-to-action__intro a:not(.call-to-action__link):focus {
    box-shadow: 0 0 0 2px #fc440f;
    outline: none
}

.call-to-action__intro a:not(.call-to-action__link):focus:active {
    box-shadow: 0 0 0 2px transparent
}

.call-to-action__intro a:not(.call-to-action__link):focus-visible {
    box-shadow: 0 0 0 2px #fc440f;
    outline: none
}

.call-to-action__intro a:not(.call-to-action__link):focus-visible:active, .call-to-action__intro a:not(.call-to-action__link):focus:not(:focus-visible) {
    box-shadow: 0 0 0 2px transparent
}

.call-to-action__intro a:not(.call-to-action__link):before {
    transition: all .25s ease
}

.call-to-action__intro a:not(.call-to-action__link):focus {
    border-radius: 0;
    box-shadow: 0 0 0 3px #fc440f
}

@media only screen and (min-width: 48em) {
    .call-to-action__intro {
        align-items: flex-start;
        grid-column: 7/span 5
    }
}

.call-to-action__link {
    margin: 40px auto 0
}

.call-to-action__link::-moz-selection, .call-to-action__link ::-moz-selection {
    color: #fff;
    background: #6640fe
}

.call-to-action__link::selection, .call-to-action__link ::selection {
    color: #fff;
    background: #6640fe
}

@media only screen and (min-width: 48em) {
    .call-to-action__link {
        margin-left: 0;
        align-self: flex-start
    }
}

.call-to-action__arrow {
    vertical-align: sub;
    margin-right: 10px
}

.call-to-action__arrow svg {
    fill: #00ef9f;
    width: 20px;
    height: 20px
}

.link-light--normal {
    color: #2f2f8e;
    box-shadow: 0 0 0 2px transparent
}

.link-light--normal:hover {
    color: #060614
}

.link-light--normal:active {
    color: #911a10
}

.link-light--normal:focus {
    box-shadow: 0 0 0 2px #fc440f;
    outline: none
}

.link-light--normal:focus:active {
    box-shadow: 0 0 0 2px transparent
}

.link-light--normal:focus-visible {
    box-shadow: 0 0 0 2px #fc440f;
    outline: none
}

.link-light--normal:focus-visible:active, .link-light--normal:focus:not(:focus-visible) {
    box-shadow: 0 0 0 2px transparent
}

.link-light--normal:before {
    transition: all .25s ease
}

.link-light--with-arrow {
    color: #2f2f8e;
    box-shadow: 0 0 0 2px transparent;
    display: inline-flex;
    align-items: baseline;
    box-sizing: content-box;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    max-width: 100%;
    margin: -7px -12px;
    padding: 7px 12px;
    border-radius: 10em;
    box-shadow: 0 0 0 1px transparent
}

.link-light--with-arrow:hover {
    color: #060614
}

.link-light--with-arrow:active {
    color: #911a10
}

.link-light--with-arrow:focus {
    box-shadow: 0 0 0 2px #fc440f;
    outline: none
}

.link-light--with-arrow:focus:active {
    box-shadow: 0 0 0 2px transparent
}

.link-light--with-arrow:focus-visible {
    box-shadow: 0 0 0 2px #fc440f;
    outline: none
}

.link-light--with-arrow:focus-visible:active, .link-light--with-arrow:focus:not(:focus-visible) {
    box-shadow: 0 0 0 2px transparent
}

.link-light--with-arrow:before {
    content: "";
    min-height: 13px;
    min-width: 13px;
    -webkit-mask-image: url();
    mask-image: url();
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    margin-right: 8px;
    transition: all .25s ease;
    transform: translateX(0);
    background-color: #fc440f
}

.link-light--with-arrow:active:before, .link-light--with-arrow:focus:hover:before, .link-light--with-arrow:hover:before {
    background-color: #911a10;
    transform: translateX(6px)
}

.link-light--with-arrow:focus {
    box-shadow: 0 0 0 1px #fc440f
}

.link-light--with-arrow:focus:before {
    background-color: #fc440f
}

.link-light--with-arrow:focus:active {
    box-shadow: 0 0 0 1px transparent
}

.link-light--with-arrow:focus-visible {
    box-shadow: 0 0 0 1px #fc440f !important
}

.link-dark--normal {
    color: #fff;
    box-shadow: 0 0 0 2px transparent
}

.link-dark--normal:hover {
    color: #fffd77
}

.link-dark--normal:active {
    color: #fff
}

.link-dark--normal:focus {
    box-shadow: 0 0 0 2px #fc440f;
    outline: none
}

.link-dark--normal:focus:active {
    box-shadow: 0 0 0 2px transparent
}

.link-dark--normal:focus-visible {
    box-shadow: 0 0 0 2px #fc440f;
    outline: none
}

.link-dark--normal:focus-visible:active, .link-dark--normal:focus:not(:focus-visible) {
    box-shadow: 0 0 0 2px transparent
}

.link-dark--normal:before {
    transition: all .25s ease
}

.link-dark--with-arrow {
    color: #fff;
    box-shadow: 0 0 0 2px transparent;
    display: inline-flex;
    align-items: baseline;
    box-sizing: content-box;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    max-width: 100%;
    margin: -7px -12px;
    padding: 7px 12px;
    border-radius: 10em;
    box-shadow: 0 0 0 1px transparent
}

.link-dark--with-arrow:hover {
    color: #fffd77
}

.link-dark--with-arrow:active {
    color: #fff
}

.link-dark--with-arrow:focus {
    box-shadow: 0 0 0 2px #fc440f;
    outline: none
}

.link-dark--with-arrow:focus:active {
    box-shadow: 0 0 0 2px transparent
}

.link-dark--with-arrow:focus-visible {
    box-shadow: 0 0 0 2px #fc440f;
    outline: none
}

.link-dark--with-arrow:focus-visible:active, .link-dark--with-arrow:focus:not(:focus-visible) {
    box-shadow: 0 0 0 2px transparent
}

.link-dark--with-arrow:before {
    content: "";
    min-height: 13px;
    min-width: 13px;
    -webkit-mask-image: url();
    mask-image: url();
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    margin-right: 8px;
    transition: all .25s ease;
    transform: translateX(0);
    background-color: #fffd77
}

.link-dark--with-arrow:active:before, .link-dark--with-arrow:focus:hover:before, .link-dark--with-arrow:hover:before {
    background-color: #fff;
    transform: translateX(6px)
}

.link-dark--with-arrow:focus {
    box-shadow: 0 0 0 1px #fc440f
}

.link-dark--with-arrow:focus:before {
    background-color: #fffd77
}

.link-dark--with-arrow:focus:active {
    box-shadow: 0 0 0 1px transparent
}

.link-dark--with-arrow:focus-visible {
    box-shadow: 0 0 0 1px #fc440f !important
}

.heading-block {
    padding: 60px 0 0
}

@media only screen and (min-width: 48em) {
    .heading-block {
        padding: 80px 0 120px
    }
}

.heading-block + .heading-block {
    padding-top: 0
}

@media only screen and (min-width: 64em) {
    .heading-block {
        max-width: 1080px;
        padding-right: 60px;
        padding-left: 60px;
        margin-right: auto;
        margin-left: auto
    }
}

@media only screen and (min-width: 48em) {
    .heading-block {
        padding-bottom: 0
    }
}

.heading-block .sf-heading {
    margin-bottom: 0;
    padding-bottom: 40px;
    color: #000;
    text-align: center
}

.hero {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    background-color: #0d0b30;
    color: #fff;
    border-bottom-left-radius: 30px;
    border-bottom-left-radius: var(--border-radius, 30px);
    padding: 60px 0 80px
}

.hero::-moz-selection, .hero ::-moz-selection {
    color: #212121;
    background: rgba(255, 253, 119, .99)
}

.hero::selection, .hero ::selection {
    color: #212121;
    background: rgba(255, 253, 119, .99)
}

@media only screen and (min-width: 40em) {
    .hero {
        padding-bottom: 120px
    }
}

@media only screen and (min-width: 48em) {
    .hero {
        padding: 64px 0 120px
    }
}

@media only screen and (min-width: 64em) {
    .hero {
        --border-radius: 40px;
        padding-top: 80px;
        padding-bottom: 160px
    }
}

.hero__wrapper {
    grid-row-gap: 60px
}

@media only screen and (min-width: 64em) {
    .hero__wrapper {
        max-width: 1384px;
        padding-right: 60px;
        padding-left: 60px;
        margin-right: auto;
        margin-left: auto
    }
}

@media only screen and (min-width: 30em) {
    .hero__wrapper {
        grid-row-gap: 80px
    }
}

@media only screen and (min-width: 48em) {
    .hero__wrapper {
        grid-row-gap: 80px;
        align-items: center
    }
}

@media only screen and (min-width: 64em) {
    .hero__wrapper {
        grid-row-gap: 0
    }
}

@media only screen and (min-width: 83.5em) {
    .hero--home .hero__wrapper {
        grid-column-gap: 32px
    }
}

.hero__styled-overlap {
    width: 100%;
    background-color: #0d0b30;
    bottom: -30px;
    bottom: calc(-1 * var(--border-radius, 30px))
}

.hero__styled-overlap, .hero__styled-overlap:after {
    position: absolute;
    left: 0;
    height: 30px;
    height: var(--border-radius, 30px);
    display: block
}

.hero__styled-overlap:after {
    right: 0;
    bottom: 0;
    content: "";
    background-color: #fff;
    border-top-right-radius: 30px;
    border-top-right-radius: var(--border-radius, 30px)
}

.hero--purple .hero__styled-overlap {
    background-color: #6640fe
}

.hero--green .hero__styled-overlap {
    background-color: #00ef9f
}

.hero--yellow .hero__styled-overlap {
    background-color: #ffffe4
}

.hero__content {
    display: flex;
    flex-direction: column;
    grid-column: 2/span 10;
    justify-self: center
}

.hero__content .domain-form:not(.hero--home .domain-form) {
    max-width: 378px;
    margin: 40px auto 0
}

@media only screen and (min-width: 64em) {
    .hero__content .domain-form:not(.hero--home .domain-form) {
        margin-left: 0
    }
}

.hero--home .hero__content h1 {
    font-size: 18px;
    font-size: 1rem;
    font-weight: 400;
    color: #000;
    line-height: 1;
    margin-bottom: 32px
}

.hero--home .hero__content h1 span {
    margin-bottom: 16px
}

.hero--home .hero__content h1 strong {
    font-size: 40px;
    font-size: 2.2222222222rem;
    display: block;
    margin-top: 16px;
    font-weight: 800;
    line-height: 1
}

.hero--home .hero__content h1 em {
    font-style: normal;
    color: #6640fe
}

.hero--domain .hero__content .domain-form--domain {
    width: 100%
}

@media only screen and (min-width: 30em) {
    .hero__content h1 em {
        display: block
    }
}

@media only screen and (min-width: 40em) {
    .hero__content {
        justify-self: normal
    }

    .hero--domain .hero__content, .hero--product .hero__content, .hero--service .hero__content, .hero--standard .hero__content {
        grid-column: 3/span 8
    }
}

@media only screen and (min-width: 48em) {
    .hero__content {
        display: block;
        grid-column: 2/span 10
    }

    .hero--domain .hero__content, .hero--product .hero__content, .hero--service .hero__content, .hero--standard .hero__content {
        grid-column: 3/span 8
    }

    .hero--contracts .hero__content {
        grid-column: 2/span 4
    }
}

@media only screen and (min-width: 64em) {
    .hero__content {
        grid-column: 1/span 6
    }

    .hero--contracts .hero__content {
        grid-column: 1/span 5
    }

    .hero--domain .hero__content, .hero--product .hero__content, .hero--service .hero__content, .hero--standard .hero__content {
        grid-column: 1/span 6
    }
}

@media only screen and (min-width: 83.5em) {
    .hero--home .hero__content h1 strong {
        font-size: 60px;
        font-size: 3.3333333333rem
    }
}

.hero--purple {
    background-color: #6640fe;
    color: #fff
}

.hero--white {
    background-color: #fff;
    color: #6640fe;
    padding-bottom: 0;
    margin-bottom: 80px
}

.hero--white::-moz-selection, .hero--white ::-moz-selection {
    color: #fff;
    background: #6640fe
}

.hero--white::selection, .hero--white ::selection {
    color: #fff;
    background: #6640fe
}

@media only screen and (min-width: 64em) {
    .hero--white {
        padding-bottom: 0;
        margin-bottom: 120px
    }
}

.hero--white .hero__strapline {
    color: #0c0c30
}

.hero--white .hero__styled-overlap {
    display: none
}

.hero--green {
    background-color: #00ef9f;
    color: #212121
}

.hero--green::-moz-selection, .hero--green ::-moz-selection {
    color: #fff;
    background: #6640fe
}

.hero--green::selection, .hero--green ::selection {
    color: #fff;
    background: #6640fe
}

.hero--yellow {
    background-color: #ffffe4;
    color: #212121
}

.hero--yellow::-moz-selection, .hero--yellow ::-moz-selection {
    color: #fff;
    background: #6640fe
}

.hero--yellow::selection, .hero--yellow ::selection {
    color: #fff;
    background: #6640fe
}

.hero--dark {
    background-color: #0d0b30;
    color: #fff
}

.hero--dark::-moz-selection, .hero--dark ::-moz-selection {
    color: #212121;
    background: rgba(255, 253, 119, .99)
}

.hero--dark::selection, .hero--dark ::selection {
    color: #212121;
    background: rgba(255, 253, 119, .99)
}

.hero--dark .hero__strapline {
    color: #00ef9f
}

.hero--home {
    padding: 60px 0 80px;
    margin: 0
}

.hero--home .hero__title {
    text-align: center
}

@media only screen and (min-width: 64em) {
    .hero--home .hero__title {
        text-align: left
    }
}

@media only screen and (min-width: 48em) {
    .hero--home {
        padding: 100px 0 120px
    }
}

.hero--landing .hero__intro, .hero--landing .hero__post-intro, .hero--landing .hero__title {
    color: #0d0b30
}

.hero--domain {
    padding: 60px 16px
}

@media only screen and (min-width: 40em) {
    .hero--domain {
        padding-bottom: 120px
    }
}

@media only screen and (min-width: 64em) {
    .hero--domain {
        padding-bottom: 160px;
        padding-top: 80px
    }
}

.hero__title {
    font-size: 40px;
    font-size: 2.2222222222rem;
    word-break: break-word;
    line-height: 1.1;
    -webkit-margin-after: 0;
    margin-block-end: 0
}

.hero--domain .hero__title {
    margin-left: 16px
}

@media only screen and (min-width: 30em) {
    .hero--domain .hero__title {
        margin-left: 0
    }
}

@media only screen and (min-width: 48em) {
    .hero__title {
        font-size: 50px;
        font-size: 2.7777777778rem
    }
}

.hero__title--red {
    color: #fc440f
}

.hero__title--white {
    color: #fff
}

.hero--contracts .hero__title {
    font-size: 40px;
    font-size: 2.2222222222rem
}

.hero__strapline {
    font-size: 32px;
    font-size: 1.7777777778rem;
    font-family: Agrandir, sans-serif;
    line-height: 1.31;
    color: #fff;
    text-align: left
}

.hero__strapline--domain {
    font-size: 20px;
    font-size: 1.1111111111rem;
    color: inherit;
    margin-left: 16px;
    padding-bottom: 0;
    line-height: 1.1;
    margin-bottom: 32px;
    font-family: SourceSansPro, sans-serif
}

.hero__strapline--domain p {
    font-family: inherit;
    font-size: inherit;
    color: inherit;
    -webkit-margin-after: 0;
    margin-block-end: 0
}

@media only screen and (min-width: 30em) {
    .hero__strapline--domain {
        margin-left: 0
    }
}

.hero__intro, .hero__post-intro {
    font-size: 20px;
    font-size: 1.1111111111rem;
    color: inherit
}

.hero__intro p, .hero__post-intro p {
    font-family: inherit;
    font-size: inherit;
    color: inherit;
    -webkit-margin-after: 0;
    margin-block-end: 0;
    -webkit-margin-before: 0;
    margin-block-start: 0
}

.hero__intro--dark {
    color: #fff
}

.hero__intro--dark::-moz-selection, .hero__intro--dark ::-moz-selection {
    color: #212121;
    background: rgba(255, 253, 119, .99)
}

.hero__intro--dark::selection, .hero__intro--dark ::selection {
    color: #212121;
    background: rgba(255, 253, 119, .99)
}

.hero__intro--dark a {
    color: #fff;
    box-shadow: 0 0 0 2px transparent;
    display: inline
}

.hero__intro--dark a:hover {
    color: #fffd77
}

.hero__intro--dark a:active {
    color: #fff
}

.hero__intro--dark a:focus {
    box-shadow: 0 0 0 2px #fc440f;
    outline: none
}

.hero__intro--dark a:focus:active {
    box-shadow: 0 0 0 2px transparent
}

.hero__intro--dark a:focus-visible {
    box-shadow: 0 0 0 2px #fc440f;
    outline: none
}

.hero__intro--dark a:focus-visible:active, .hero__intro--dark a:focus:not(:focus-visible) {
    box-shadow: 0 0 0 2px transparent
}

.hero__intro--dark a:before {
    transition: all .25s ease
}

.hero--contracts .hero__intro p, .hero--contracts .hero__post-intro p {
    color: #212121
}

.hero__button {
    text-align: center;
    margin: 40px auto 0
}

@media only screen and (min-width: 30em) {
    .hero__button {
        margin: 60px auto 0
    }

    .hero--product .hero__button {
        margin-top: 40px
    }
}

@media only screen and (min-width: 64em) {
    .hero__button {
        text-align: left;
        margin: 40px 0 0
    }
}

.hero__image {
    grid-column: 3/span 8
}

.hero__image svg {
    display: block;
    margin: auto;
    max-width: 385px;
    max-height: 360px;
    width: 100%
}

@media only screen and (min-width: 83.5em) {
    .hero--home .hero__image svg {
        max-height: 400px
    }
}

@media only screen and (min-width: 40em) {
    .hero__image {
        grid-column: 4/span 6
    }
}

@media only screen and (min-width: 48em) {
    .hero--contracts .hero__image {
        grid-column: 7/span 6
    }
}

@media only screen and (min-width: 64em) {
    .hero__image {
        grid-column: 7/span 5
    }

    .hero--contracts .hero__image, .hero--domain .hero__image, .hero--home .hero__image, .hero--product .hero__image, .hero--service .hero__image, .hero--standard .hero__image {
        grid-column: 8/span 5
    }
}

@media only screen and (min-width: 83.5em) {
    .hero__image {
        grid-column: 8/span 5
    }
}

.hero__post {
    grid-column: 2/span 10;
    justify-self: center
}

@media only screen and (min-width: 40em) {
    .hero__post {
        justify-self: normal
    }
}

@media only screen and (min-width: 48em) {
    .hero__post {
        grid-column: 3/span 8
    }
}

.hero__post .domain-form {
    max-width: 378px;
    margin: 40px auto 0
}

.hero__post-intro {
    -webkit-margin-after: 40px;
    margin-block-end: 40px
}

.hero__post-subheading {
    font-size: 14px;
    font-size: .7777777778rem;
    display: block;
    grid-row: 1;
    margin-bottom: 8px;
    font-family: Agrandir, sans-serif;
    color: #6640fe
}

.hero__post-title {
    font-size: 40px;
    font-size: 2.2222222222rem;
    margin-bottom: 8px;
    line-height: 1.1;
    grid-row: 2
}

.hero__checkbox-title {
    font-size: 20px;
    font-size: 1.1111111111rem
}

.hero--domain .hero__checkbox-title {
    margin-left: 16px;
    margin-top: 0
}

@media only screen and (min-width: 30em) {
    .hero--domain .hero__checkbox-title {
        margin-left: 0
    }
}

.hero__checkboxes {
    font-size: 20px;
    font-size: 1.1111111111rem
}

.hero__checkboxes span {
    color: #fff;
    margin-bottom: 16px
}

.hero__checkboxes ul {
    display: flex;
    flex-direction: column
}

.hero__checkboxes ul li {
    position: relative;
    margin-bottom: 8px;
    padding-left: 25px
}

.hero__checkboxes ul li:before {
    position: absolute;
    left: 0;
    top: 2px;
    fill: #fc440f;
    content: "";
    width: 15px;
    height: 15px;
    background-color: #fc440f;
    -webkit-mask-image: url();
    mask-image: url();
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat
}

.hero--domain .hero__checkboxes {
    margin-left: 16px
}

@media only screen and (min-width: 30em) {
    .hero--domain .hero__checkboxes {
        margin-left: 0
    }
}

.hero__checkboxes ul {
    margin: 0 0 0 20px
}

.hero__checkboxes ul li {
    text-indent: 0;
    margin-bottom: 0;
    padding-left: 16px
}

.hero__checkboxes ul li:before {
    top: 4px;
    left: -1.15em;
    height: 20px;
    min-width: 20px
}

.hero__checkboxes ul li:nth-child(n+2) {
    margin-top: 0
}

.checkmark {
    position: relative;
    margin-bottom: 8px;
    padding-left: 25px
}

.checkmark--white, .hero__checkboxes--dark li {
    color: #fff
}

.checkmark__icon {
    position: absolute;
    left: 0;
    top: 2px;
    width: 15px;
    fill: #fc440f
}

.checkmark-list {
    display: flex;
    flex-direction: column
}

.checkmark-list__heading {
    color: #fff;
    margin-bottom: 16px
}

.checkmark-list__item {
    margin-bottom: 16px
}

@-webkit-keyframes animate-stripes {
    0% {
        transform: translateX(0)
    }
    to {
        transform: translateX(60px)
    }
}

@keyframes animate-stripes {
    0% {
        transform: translateX(0)
    }
    to {
        transform: translateX(60px)
    }
}

.news-feed {
    padding-top: 60px;
    padding-bottom: 80px;
    scroll-margin: 80px
}

@media only screen and (min-width: 48em) {
    .news-feed {
        padding-top: 80px;
        padding-bottom: 120px
    }
}

@media only screen and (min-width: 64em) {
    .news-feed {
        margin-right: auto;
        margin-left: auto
    }
}

.heading-block + .news-feed {
    padding-top: 0
}

@media only screen and (min-width: 64em) {
    .news-feed {
        max-width: 1384px;
        padding-right: 60px;
        padding-left: 60px;
        margin-right: auto;
        margin-left: auto
    }
}

.news-feed__inner {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center
}

@media only screen and (min-width: 48em) {
    .news-feed__inner {
        flex-direction: row;
        margin: 0 60px
    }
}

@media only screen and (min-width: 64em) {
    .news-feed__inner {
        margin: 0 8px
    }
}

@media only screen and (min-width: 80em) {
    .news-feed__inner {
        margin: 0 auto
    }
}

.news-feed__title {
    color: #6640fe;
    margin: 0 0 32px 32px
}

@media only screen and (min-width: 48em) {
    .news-feed__title {
        margin: 40px 32px 0 0
    }
}

@media only screen and (min-width: 64em) {
    .news-feed__title {
        margin: 40px 80px 0 0
    }
}

.news-feed__container {
    height: 852px;
    width: 320px;
    margin: auto
}

@media only screen and (min-width: 30em) {
    .news-feed__container {
        height: 808px;
        width: 416px
    }
}

@media only screen and (min-width: 65em) {
    .news-feed__container {
        display: flex;
        flex-direction: row;
        justify-content: center;
        height: 438px;
        width: 1500px
    }
}

.news-feed__link {
    font-size: 18px;
    font-size: 1rem;
    box-shadow: 0 0 0 2px transparent;
    display: inline-flex;
    align-items: baseline;
    box-sizing: content-box;
    width: -webkit-max-content;
    width: -moz-max-content;
    max-width: 100%;
    margin: -7px -12px;
    padding: 7px 12px;
    border-radius: 10em;
    box-shadow: 0 0 0 1px transparent;
    display: flex;
    color: #2f2f8e;
    font-family: SourceSansPro, sans-serif;
    font-weight: 600;
    text-decoration: underline;
    width: max-content
}

.news-feed__link:hover {
    color: #060614
}

.news-feed__link:active {
    color: #911a10
}

.news-feed__link:focus {
    box-shadow: 0 0 0 2px #fc440f;
    outline: none
}

.news-feed__link:focus:active {
    box-shadow: 0 0 0 2px transparent
}

.news-feed__link:focus-visible {
    box-shadow: 0 0 0 2px #fc440f;
    outline: none
}

.news-feed__link:focus-visible:active, .news-feed__link:focus:not(:focus-visible) {
    box-shadow: 0 0 0 2px transparent
}

.news-feed__link:before {
    content: "";
    min-height: 13px;
    min-width: 13px;
    -webkit-mask-image: url();
    mask-image: url();
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    margin-right: 8px;
    transition: all .25s ease;
    transform: translateX(0);
    background-color: #fc440f
}

.news-feed__link:active:before, .news-feed__link:focus:hover:before, .news-feed__link:hover:before {
    background-color: #911a10;
    transform: translateX(6px)
}

.news-feed__link:focus {
    box-shadow: 0 0 0 1px #fc440f
}

.news-feed__link:focus:before {
    background-color: #fc440f
}

.news-feed__link:focus:active {
    box-shadow: 0 0 0 1px transparent
}

.news-feed__link:focus-visible {
    box-shadow: 0 0 0 1px #fc440f !important
}

.news-feed__post {
    overflow: hidden;
    border-radius: 20px 0 20px 0;
    display: block;
    padding: 32px;
    text-decoration: none;
    transition: box-shadow .3s ease;
    height: 422px;
    width: 100%;
    max-width: 416px;
}

.news-feed__post:not(:last-child) {
    margin-bottom: 8px
}

@media only screen and (min-width: 30em) {
    .news-feed__post {
        height: 400px;
        width: 416px
    }
}

@media only screen and (min-width: 64em) {
    .news-feed__post {
        height: 438px;
        width: 336px;
        margin-bottom: 0;
        padding: 40px
    }
}

.news-feed__post:active, .news-feed__post:focus, .news-feed__post:hover {
    box-shadow: 0 12px 40px 0 #9999ac
}

.news-feed__post-image {
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    background-color: #e0d9ff;
    height: 150px
}

.news-feed__post-description--placeholder, .news-feed__post-title--placeholder {
    position: relative;
    overflow: hidden;
    background-color: #e0d9ff
}

.news-feed__post-description--placeholder:before, .news-feed__post-title--placeholder:before {
    content: "";
    position: absolute;
    top: 0;
    left: -60px;
    bottom: 0;
    right: 0;
    background-image: linear-gradient(135deg, hsla(0, 0%, 100%, .15) 25%, hsla(0, 0%, 100%, 0) 0, hsla(0, 0%, 100%, 0) 50%, hsla(0, 0%, 100%, .15) 0, hsla(0, 0%, 100%, .15) 75%, hsla(0, 0%, 100%, 0) 0, hsla(0, 0%, 100%, 0));
    background-size: 30px 30px;
    will-change: transform;
    -webkit-animation: animate-stripes 2s linear infinite;
    animation: animate-stripes 2s linear infinite
}

.news-feed__post-title {
    overflow: hidden;
    text-overflow: -o-ellipsis-lastline;
    text-overflow: ellipsis;
    display: block;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    max-height: 4.167em;
    color: #212121;
    -webkit-margin-before: 32px;
    margin-block-start: 32px
}

.news-feed__post-title--placeholder {
    height: 1.5ex;
    border-radius: 5px
}

.news-feed__post-description {
    color: #212121;
    font-weight: 400;
    -webkit-margin-before: 16px;
    margin-block-start: 16px
}

.news-feed__post-description--placeholder {
    height: 1ex;
    border-radius: 5px
}

.news-feed__post-description p {
    overflow: hidden;
    text-overflow: -o-ellipsis-lastline;
    text-overflow: ellipsis;
    display: block;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    max-height: 5.556em
}

@media only screen and (min-width: 30em) {
    .news-feed__post-description p {
        overflow: hidden;
        text-overflow: -o-ellipsis-lastline;
        text-overflow: ellipsis;
        display: block;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        max-height: 4.167em
    }
}

@media only screen and (min-width: 64em) {
    .news-feed__post-description p {
        overflow: hidden;
        text-overflow: -o-ellipsis-lastline;
        text-overflow: ellipsis;
        display: block;
        display: -webkit-box;
        -webkit-line-clamp: 4;
        -webkit-box-orient: vertical;
        max-height: 5.556em
    }
}

@media only screen and (min-width: 48em) {
    .news-feed__post-description {
        -webkit-margin-before: 16px;
        margin-block-start: 16px
    }
}

.news-feed--corporate {
    position: relative;
    margin-top: 0
}

.news-feed--corporate:before {
    content: "";
    position: absolute;
    top: -60px;
    right: 0;
    width: 100%;
    height: 60px;
    border-top-right-radius: 30px;
    background-color: #fff
}

@media only screen and (min-width: 40em) {
    .news-feed--corporate:before {
        border-top-right-radius: 40px;
        top: -80px;
        height: 80px
    }
}

.text-with-button {
    padding-top: 60px;
    padding-bottom: 80px;
    margin: 0 32px;
    text-align: center
}

@media only screen and (min-width: 48em) {
    .text-with-button {
        padding-top: 80px;
        padding-bottom: 120px
    }
}

@media only screen and (min-width: 64em) {
    .text-with-button {
        margin-right: auto;
        margin-left: auto
    }
}

.heading-block + .text-with-button {
    padding-top: 0
}

@media only screen and (min-width: 30em) {
    .text-with-button {
        margin: 0 80px
    }
}

@media only screen and (min-width: 40em) {
    .text-with-button {
        margin: 0 120px
    }
}

@media only screen and (min-width: 64em) {
    .text-with-button {
        margin: 0 auto
    }
}

@media only screen and (min-width: 64em)and (min-width: 64em) {
    .text-with-button {
        max-width: 1080px;
        padding-right: 60px;
        padding-left: 60px;
        margin-right: auto;
        margin-left: auto
    }
}

.text-with-button__heading {
    font-size: 28px;
    font-size: 1.5555555556rem;
    line-height: 1.32;
    font-family: Agrandir, sans-serif;
    color: #0c0c30
}

.text-with-button__button-container {
    margin: 60px -32px 0;
    padding: 0 60px
}

@media only screen and (min-width: 30em) {
    .text-with-button__button-container {
        margin: 60px 0 0
    }
}

.text-with-button__link {
    width: 100%
}

@media only screen and (min-width: 30em) {
    .text-with-button__link {
        width: auto
    }
}

.paragraph-block {
    margin: 0 20px
}

@media only screen and (min-width: 64em) {
    .paragraph-block {
        max-width: 1080px;
        padding-right: 60px;
        padding-left: 60px;
        margin-right: auto;
        margin-left: auto
    }
}

@media only screen and (min-width: 40em) {
    .paragraph-block {
        margin: 0 40px
    }
}

@media only screen and (min-width: 48em) {
    .paragraph-block {
        margin: 0 60px
    }
}

.paragraph-block:last-child {
    margin-bottom: 0
}

.paragraph-block p {
    width: 100%;
    margin: 0 auto
}

.paragraph-block .paragraph-block__link {
    padding-top: 16px
}

.error-message {
    padding-top: 60px;
    padding-bottom: 80px
}

@media only screen and (min-width: 48em) {
    .error-message {
        padding-top: 80px;
        padding-bottom: 120px
    }
}

@media only screen and (min-width: 64em) {
    .error-message {
        margin-right: auto;
        margin-left: auto
    }
}

.heading-block + .error-message {
    padding-top: 0
}

.error-message--container {
    display: flex;
    width: 100%;
    padding: 16px;
    margin: 0 auto;
    background-color: #ffffe4;
    flex-wrap: wrap
}

@media only screen and (min-width: 40em) {
    .error-message--container {
        justify-content: center
    }
}

@media only screen and (min-width: 64em) {
    .error-message--container {
        width: 1080px
    }
}

.error-message p {
    margin: 0 8px 0 0
}

.error-message strong {
    align-self: center;
    font-weight: 600
}

.breadcrumbs-nav {
    display: flex;
    align-items: center;
    flex-direction: row;
    width: 100%;
    height: 100%;
    margin-bottom: 10px
}

.breadcrumbs-nav li:nth-child(n+2) {
    margin-top: 0
}

.breadcrumbs-nav__item {
    font-size: 12px;
    font-size: .6666666667rem;
    width: auto;
    padding: 0;
    margin: 0 5px 0 0;
    text-transform: uppercase;
    border-bottom: 0
}

.breadcrumbs-nav__item:after {
    color: #6640fe;
    content: "›"
}

.breadcrumbs-nav__item:first-child a {
    margin-left: 0
}

.breadcrumbs-nav__item:last-child {
    margin-left: 10px;
    border-bottom: 1px solid
}

@media only screen and (min-width: 48em) {
    .breadcrumbs-nav__item:last-of-type:after {
        content: ""
    }
}

.breadcrumbs-nav__link {
    color: #6640fe;
    border-bottom: 1px solid transparent;
    transition: color, border .25s ease-out
}

.breadcrumbs-nav__link:hover {
    cursor: pointer
}

@media only screen and (min-width: 48em) {
    .breadcrumbs-nav__link {
        padding: 5px 0;
        margin: 0 10px
    }
}

.footerlinks-nav {
    display: flex;
    align-items: center;
    flex-direction: column;
    width: 100%;
    flex-wrap: wrap;
    height: auto
}

@media only screen and (min-width: 48em) {
    .footerlinks-nav {
        flex-direction: row
    }
}

.footerlinks-nav__item {
    width: 100%;
    padding-bottom: 5px;
    margin-bottom: 0;
    border-bottom: 0;
    font-weight: 700;
    text-align: center
}

.footerlinks-nav__item:first-of-type .footerlinks-nav__link {
    margin-left: 0
}

@media only screen and (min-width: 48em) {
    .footerlinks-nav__item {
        width: auto;
        padding: 0;
        margin: 0;
        text-align: left
    }

    .footerlinks-nav__item:after {
        color: #0d0b30;
        content: "|"
    }

    .footerlinks-nav__item:last-of-type:after {
        content: ""
    }
}

.footerlinks-nav__link {
    border-bottom: 1px solid transparent;
    transition: color, border .25s ease-out
}

.footerlinks-nav__link:hover {
    cursor: pointer;
    color: #fff;
    border-bottom: 1px solid #fff
}

@media only screen and (min-width: 48em) {
    .footerlinks-nav__link {
        padding: 5px 0;
        margin: 0 10px
    }
}

@media only screen and (min-width: 64em) {
    .footerlinks-nav__icon {
        display: none
    }
}

.footercolumn__header {
    display: flex;
    align-items: flex-start;
    -webkit-margin-after: 16px;
    margin-block-end: 16px;
    transition: outline .1s ease
}

.footercolumn__header:focus {
    outline: 3px solid #c2b3ff;
    outline-offset: 8px
}

@media only screen and (min-width: 48em) {
    .footercolumn__header {
        width: calc(100% - 45px)
    }
}

.footercolumn__icon {
    fill: #6640fe;
    margin-right: 16px;
    -webkit-margin-after: 4px;
    margin-block-end: 4px
}

.footercolumn__title {
    color: #fc440f;
    -webkit-margin-after: 0;
    margin-block-end: 0;
    padding: 0
}

.footercolumn-nav {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    padding-bottom: 20px
}

.footercolumn-nav__item {
    width: auto;
    padding-bottom: 16px;
    padding-left: 43px;
    margin-bottom: 0;
    border-bottom: 0;
    font-weight: 700;
    transform: translateY(-10px);
    transition: all .3s linear .1s;
    text-indent: 0
}

.footercolumn-nav__item:before {
    content: "";
    margin: 0
}

@media only screen and (min-width: 48em) {
    .footercolumn-nav__item {
        padding-bottom: 8px;
        margin: 0;
        border-bottom: 0;
        opacity: 1;
        transform: translateY(0)
    }
}

.footer__language-picker-link, .footer__panel-link, .footercolumn-nav__link {
    transition: outline, color, border .25s ease-out;
    color: #fff;
    font-weight: 400;
    text-decoration: none
}

.footer__language-picker-link:active, .footer__language-picker-link:hover, .footer__panel-link:active, .footer__panel-link:hover, .footercolumn-nav__link:active, .footercolumn-nav__link:hover {
    color: #00ef9f;
    text-decoration: underline
}

.footer__language-picker-link:focus, .footer__panel-link:focus, .footercolumn-nav__link:focus {
    outline: 3px solid #c2b3ff;
    outline-offset: 2px
}

.footer__language-picker-link:focus:active, .footer__panel-link:focus:active, .footercolumn-nav__link:focus:active {
    outline: none
}

@media only screen and (min-width: 48em) {
    .footer__language-picker-link, .footer__panel-link, .footercolumn-nav__link {
        padding: 5px 0;
        margin: 0
    }
}

.navbar {
    font-size: 16px;
    position: relative;
    background-color: #ffffe4;
    height: 80px
}

.navbar--dark {
    background-color: #0d0b30
}

.navbar--green {
    background-color: #00ef9f
}

.navbar--purple {
    background-color: #6640fe
}

.navbar--transparent {
    background-color: transparent
}

.navbar--red {
    background-color: #fedacf
}

.navbar--purple-light {
    background-color: #e0d9ff
}

.navbar.active .navbar__top {
    background-color: #fff
}

@media only screen and (min-width: 48em) {
    .navbar.active .navbar__top {
        background-color: initial
    }
}

.navbar__top {
    display: flex;
    width: 100%;
    justify-content: space-between;
    padding: 32px 20px 16px;
    pointer-events: all
}

@media only screen and (min-width: 80em) {
    .navbar__top {
        width: auto;
        height: 100%;
        padding: 0;
        align-items: center
    }
}

.navbar__inner {
    display: flex;
    justify-content: flex-start;
    margin: 0 auto;
    flex-direction: column;
    width: 100%;
    height: 100vh;
    position: absolute;
    pointer-events: none
}

@media only screen and (min-width: 80em) {
    .navbar__inner {
        display: flex;
        margin: 0 auto;
        padding: 0 60px;
        max-width: 1384px;
        justify-content: flex-start;
        position: inherit;
        flex-direction: row;
        width: 100%;
        height: 100%;
        z-index: 2000
    }
}

.navbar__menu-button {
    position: relative;
    display: block;
    background: none;
    border: none;
    cursor: pointer;
    z-index: 200;
    transition: opacity 0s ease, background-color 0s;
    box-sizing: content-box;
    height: 25px;
    width: 25px;
    padding: 8px;
    margin: -8px
}

@media only screen and (min-width: 80em) {
    .navbar__menu-button {
        display: none
    }
}

.navbar__menu-button:active {
    opacity: .8
}

.navbar__menu-button:focus {
    outline: 1px solid #fc440f
}

.navbar__menu-button.is-open {
    background-color: #fff;
    transition: opacity .1s ease, background-color .1s .2s
}

.navbar__menu-button.is-open .navbar__menu-button-icon--open {
    opacity: 0
}

.navbar__menu-button.is-open .navbar__menu-button-icon--close {
    opacity: 1
}

.navbar__menu-button-icon {
    position: absolute;
    top: 8px;
    right: 8px;
    height: 25px;
    fill: #6640fe;
    opacity: 1;
    transition: all .1s ease
}

.navbar--dark:not(.active) .navbar__menu-button-icon {
    fill: #fffd92
}

.navbar__menu-button-icon--close {
    position: absolute;
    opacity: 0
}

.navbar__logo {
    width: 90px;
    transition: all .05s ease;
    fill: #0d0b30
}

.navbar--dark .navbar__logo {
    fill: #fff
}

.navbar.active .navbar__logo {
    fill: #6640fe !important
}

@media only screen and (min-width: 48em) {
    .navbar__logo {
        width: 123px
    }
}

@media only screen and (min-width: 80em) {
    .navbar__logo {
        fill: #6640fe
    }

    .navbar--green .navbar__logo {
        fill: #0d0b30
    }

    .navbar--dark .navbar__logo {
        fill: #fffd92
    }
}

.navbar__logo-container {
    position: relative;
    flex: 0 0 auto;
    width: 90px;
    height: 27px;
    display: flex
}

.navbar__logo-container:focus {
    outline: 1px solid #fc440f;
    outline-offset: 8px
}

@media only screen and (min-width: 48em) {
    .navbar__logo-container {
        width: 123px;
        height: 36px
    }
}

@media only screen and (min-width: 80em) {
    .navbar__logo-container {
        margin-right: 32px
    }
}

.navbar__overlay {
    display: none;
    background: #060614;
    opacity: .6
}

.navbar__overlay.active {
    display: block
}

@media only screen and (min-width: 48em) {
    .navbar__overlay {
        content: "";
        height: 100vh;
        width: 100vw;
        position: fixed;
        top: 0;
        z-index: 4
    }
}

@media only screen and (min-width: 80em) {
    .navbar__overlay, .navbar__overlay.active {
        display: none
    }
}

.navbar.minimize .navbar__logo--large, .navbar.minimize .primary-nav__item {
    opacity: 0
}

.primary-nav {
    margin: 0;
    padding: 32px 20px 0;
    width: 100%;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    background-color: #fff;
    z-index: 5;
    overflow-y: auto;
    transform: translateX(-100%);
    transition: all .2s;
    pointer-events: all
}

.primary-nav.is-visible {
    transform: translateX(0)
}

@media only screen and (min-width: 48em) {
    .primary-nav {
        width: 33.333%;
        top: 0;
        padding-top: 100px;
        border-right: 1px solid #979797;
        position: fixed;
        height: 100vh
    }
}

@media only screen and (min-width: 80em) {
    .primary-nav {
        position: relative;
        flex-direction: row;
        align-items: center;
        padding: 0;
        width: 100%;
        height: auto;
        border: none;
        transform: translateX(0);
        background-color: transparent;
        overflow-y: unset
    }
}

.primary-nav__item {
    position: relative;
    margin: 16px
}

.primary-nav__item:first-child {
    margin-top: 0
}

@media only screen and (min-width: 80em) {
    .primary-nav__item {
        content: "";
        padding: 0;
        width: auto;
        margin: 0 32px 0 0;
        text-align: left
    }

    .primary-nav__item:last-child {
        margin-right: 0
    }
}

.primary-nav__item--is-parent {
    width: 100%
}

@media only screen and (min-width: 80em) {
    .primary-nav__item--is-parent {
        width: auto
    }
}

.primary-nav__item--is-parent .primary-nav__link {
    position: relative;
    padding-right: 12px
}

.primary-nav__item--is-parent .primary-nav__link:after {
    content: "";
    display: block;
    position: absolute;
    top: 9px;
    right: 0;
    width: 8px;
    height: 5px;
    -webkit-mask-image: url();
    mask-image: url();
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: #000;
    transition: transform .2s ease
}

@media only screen and (min-width: 80em) {
    .navbar--dark .primary-nav__item--is-parent .primary-nav__link:after {
        background-color: #fff
    }
}

.primary-nav__item--push {
    margin-top: 80px
}

@media only screen and (min-width: 80em) {
    .primary-nav__item--push {
        margin-top: unset;
        margin-left: auto
    }
}

.primary-nav__item .sub-nav {
    margin-top: 0
}

.primary-nav__item:hover .sub-nav {
    display: flex
}

.primary-nav__item:hover .primary-nav__link {
    border-bottom: 1px solid #6640fe
}

@media only screen and (min-width: 80em) {
    .navbar--dark .primary-nav__item:hover .primary-nav__link {
        border-bottom: 1px solid #fffd92
    }

    .primary-nav__item:hover .primary-nav__link:after {
        transform: rotate(-180deg)
    }
}

.primary-nav__item:focus-within .sub-nav {
    display: flex
}

.primary-nav__button {
    display: block;
    margin-bottom: 120px;
    padding: 6px 16px 4px;
    border: 1px solid #6640fe;
    color: #6640fe;
    text-decoration: none;
    font-weight: 400;
    text-transform: uppercase;
    transition: all .1s linear;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

@media only screen and (min-width: 80em) {
    .primary-nav__button {
        margin-bottom: 0
    }

    .navbar--dark .primary-nav__button {
        color: #fffd92;
        border-color: #fffd92
    }
}

.primary-nav__button:hover {
    color: #fff;
    background-color: #6640fe
}

@media only screen and (min-width: 80em) {
    .navbar--dark .primary-nav__button:hover {
        color: #6640fe;
        border-color: #fffd92;
        background-color: #fffd92
    }
}

.primary-nav__button:active {
    color: #fff;
    border-color: #3939b7;
    background-color: #3939b7
}

@media only screen and (min-width: 80em) {
    .navbar--dark .primary-nav__button:active {
        color: #6640fe;
        border-color: #fffd92;
        background-color: #fffd92
    }
}

.primary-nav__button:focus {
    outline: 6px solid #fc440f;
    outline-offset: 0
}

.primary-nav__button:focus:active, .primary-nav__button:focus:not(:focus-visible) {
    outline-width: 0
}

.primary-nav__link {
    color: #0c0c30;
    font-weight: 400;
    transition: all .1s linear;
    text-decoration: none;
    text-transform: uppercase;
    z-index: 200;
    border-bottom: 1px solid transparent
}

@media only screen and (min-width: 80em) {
    .navbar--dark .primary-nav__link, .navbar--dark .primary-nav__link:hover {
        color: #fff
    }
}

.primary-nav__link:hover {
    color: #000
}

.primary-nav__link:focus {
    outline: 1px solid #fc440f;
    outline-offset: 8px
}

.primary-nav__link:focus + .sub-nav {
    display: flex
}

.primary-nav__link:focus:active, .primary-nav__link:focus:not(:focus-visible) {
    outline-width: 0
}

@media only screen and (min-width: 80em) {
    .primary-nav__link {
        padding: 2px 0 0;
        font-weight: 400
    }
}

@media only screen and (min-width: 80em) {
    .primary-nav__icon {
        display: none
    }
}

.secondary-nav {
    display: flex;
    align-items: center;
    flex-direction: row;
    width: 100%;
    height: 100%;
    margin-right: 15px
}

.secondary-nav__item {
    width: 60%;
    padding-bottom: 10px;
    margin-bottom: 10px;
    text-align: center;
    border-bottom: 1px solid rgba(12, 12, 48, .2)
}

.secondary-nav__item:last-child {
    border-bottom: 0
}

@media only screen and (min-width: 48em) {
    .secondary-nav__item {
        width: auto;
        padding: 0;
        margin: 0;
        text-align: left;
        border-bottom: 0
    }

    .secondary-nav__item:after {
        color: #0d0b30;
        content: "|"
    }

    .secondary-nav__item:last-of-type:after {
        content: ""
    }
}

.secondary-nav__link {
    color: rgba(12, 12, 48, .7);
    border-bottom: 1px solid transparent;
    transition: color, border .25s ease-out
}

.secondary-nav__link:hover {
    cursor: pointer
}

@media only screen and (min-width: 48em) {
    .secondary-nav__link {
        padding: 5px 0;
        margin: 0 10px;
        color: #fff
    }

    .secondary-nav__link:hover {
        color: #fff;
        border-bottom: 1px solid #fff
    }
}

@media only screen and (min-width: 64em) {
    .secondary-nav__icon {
        display: none
    }
}

.section--main {
    position: relative;
    margin: auto;
    width: 100%
}

.skip-link {
    position: absolute;
    z-index: 201;
    top: -200px;
    left: 0;
    color: #000;
    background-color: #fff;
    padding: 20px
}

.skip-link:focus {
    top: 0
}

.sub-nav {
    width: 100%;
    height: auto;
    transition: transform .25s cubic-bezier(.24, .26, .2, 1) 0ms
}

.sub-nav:focus, .sub-nav:hover {
    display: flex
}

.sub-nav:focus-within {
    display: flex
}

.sub-nav__inner {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    padding-top: 10px;
    padding-left: 16px;
    width: 100%
}

@media only screen and (min-width: 80em) {
    .sub-nav__inner {
        padding: 0 16px;
        margin-top: 8px;
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content;
        box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .3);
        background-color: #fff
    }
}

@media only screen and (min-width: 80em) {
    .sub-nav {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content
    }
}

.sub-nav__item {
    width: 100%;
    margin: 16px 0;
    font-weight: 700;
    text-align: left
}

.sub-nav__item span {
    transition: all .1s;
    border-bottom: 1px solid transparent;
    padding-bottom: -8px
}

.sub-nav__item:last-child {
    margin-bottom: 0
}

.sub-nav__item:hover span {
    border-color: #6640fe
}

.sub-nav__item:active span {
    border-color: #3939b7
}

@media only screen and (min-width: 80em) {
    .sub-nav__item {
        width: 100%;
        padding: 0;
        margin: 16px 0
    }

    .sub-nav__item:last-child {
        margin-bottom: 16px
    }
}

.sub-nav__link {
    display: inline-block;
    width: 100%;
    color: #000;
    transition: all .25s ease-out;
    text-decoration: none;
    font-weight: 400
}

.sub-nav__link:hover {
    color: #000
}

.sub-nav__link:focus {
    outline: 0
}

.sub-nav__link:focus span {
    outline: 1px solid #fc440f
}

.sub-nav__link:active:focus span, .sub-nav__link:focus:not(:focus-visible) span {
    outline-width: 0
}

.sub-nav__link span {
    outline-offset: 8px
}

@media only screen and (min-width: 80em) {
    .sub-nav__icon {
        display: none
    }
}

.wrapper--section {
    padding-top: 60px;
    padding-bottom: 80px
}

@media only screen and (min-width: 48em) {
    .wrapper--section {
        padding-top: 80px;
        padding-bottom: 120px
    }
}

@media only screen and (min-width: 64em) {
    .wrapper--section {
        margin-right: auto;
        margin-left: auto
    }
}

.heading-block + .wrapper--section {
    padding-top: 0
}

@media only screen and (min-width: 64em) {
    .wrapper--small {
        max-width: 1080px;
        padding-right: 60px;
        padding-left: 60px;
        margin-right: auto;
        margin-left: auto
    }
}

.wrapper--large {
    max-width: 1384px;
    margin: 0 auto
}

.wrapper--main {
    background-color: #fff
}

.wrapper--content {
    margin-top: 40px
}

.wrapper--flex {
    display: flex;
    flex-direction: column
}

@media only screen and (min-width: 48em) {
    .wrapper--flex {
        flex-direction: row
    }
}

.wrapper--business {
    margin: auto;
    padding-left: 30px;
    padding-right: 30px
}

@media only screen and (min-width: 40em) {
    .wrapper--business {
        padding-left: 40px;
        padding-right: 40px;
        margin: auto
    }
}

@media only screen and (min-width: 64em)and (min-width: 64em) {
    .wrapper--business {
        max-width: 1384px
    }
}

@media only screen and (min-width: 64em)and (min-width: 64em) {
    .wrapper--business, .wrapper--business-small {
        padding-right: 60px;
        padding-left: 60px;
        margin-right: auto;
        margin-left: auto
    }

    .wrapper--business-small {
        max-width: 1080px
    }
}

@media only screen and (min-width: 48em) {
    .wrapper--business-without-cta {
        padding-bottom: 160px
    }
}

@media only screen and (min-width: 83.5em) {
    .wrapper--business-without-cta {
        padding-bottom: 230px
    }
}

.form__container {
    margin-bottom: 20px
}

.form__errors {
    font-size: 14px;
    font-size: .7777777778rem;
    padding: 20px;
    margin-bottom: 15px;
    color: #fff;
    background-color: #0d0b30
}

.select {
    position: relative;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 100%
}

.select__field {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 10px 45px 10px 15px;
    width: 100%;
    background-color: #fff;
    color: #6640fe;
    border: 1px solid #6640fe;
    border-radius: 6px;
    outline: none;
    transition: .25s ease-out
}

.select__field:focus {
    color: #911a10;
    border-color: #0d0b30;
    box-shadow: 0 0 0 5px #fc440f
}

.select__field:active, .select__field:focus:hover, .select__field:hover {
    color: #2f2f8e;
    border-color: #2f2f8e
}

.select__field:focus:active {
    box-shadow: none
}

.select__field:focus:not(:focus-visible) {
    color: #2f2f8e;
    border-color: #2f2f8e;
    box-shadow: none;
    outline: none
}

.select__icon {
    width: 15px;
    fill: #fc440f;
    position: absolute;
    top: 15px;
    bottom: 0;
    right: 16px;
    z-index: 3;
    pointer-events: none
}

.select:active .select__icon, .select:hover .select__icon {
    fill: #911a10
}

.select:focus-within .select__icon {
    fill: #911a10
}

.select__field:active + .select__icon {
    transform: rotate(180deg)
}

.field, .field--errors {
    margin-bottom: 20px
}

.field--errors {
    padding: 20px;
    border: 1px dotted red
}

.field--checkbox-input .field__radio-checkbox, .field--checkbox-select-multiple .field__radio-checkbox, .field--radio-select .field__radio-checkbox {
    display: flex;
    align-items: center;
    position: relative;
    margin-bottom: 10px
}

.field--checkbox-input .field__label, .field--checkbox-select-multiple .field__label, .field--radio-select .field__label {
    margin: 0 0 0 10px;
    font-weight: 400
}

.field--checkbox-input .field__label--multiple, .field--checkbox-select-multiple .field__label--multiple, .field--radio-select .field__label--multiple {
    margin: 0 0 5px;
    font-weight: 700
}

.field--hidden_input {
    display: none
}

.field__required {
    color: red
}

.field__label, .field__label--multiple {
    display: block;
    margin-bottom: 5px;
    font-weight: 700
}

.field__errors {
    margin-bottom: 10px;
    font-weight: 700;
    color: red
}

.field__errors, .field__help {
    font-size: 14px;
    font-size: .7777777778rem
}

.field__help {
    margin-top: 5px;
    color: rgba(12, 12, 48, .6)
}

.field__fieldset {
    border: 0;
    padding: 0;
    margin: 0
}

.field input:not([type=checkbox]):not([type=radio]):not([type=submit]), .field select, .field textarea {
    width: 100%;
    padding: 10px;
    border: 1px solid #0c0c30
}

.field input[type=radio] {
    opacity: 0
}

.field input[type=radio] + label {
    cursor: pointer;
    position: relative;
    line-height: 1.2;
    padding-left: 5px
}

.field input[type=radio] + label:before {
    content: "";
    position: absolute;
    left: -24px;
    top: 0;
    border-radius: 50%;
    border: 1px solid;
    width: 20px;
    height: 20px
}

.field input[type=radio] + label:after {
    content: "";
    position: absolute;
    left: -20px;
    top: 4px;
    border-radius: 50%;
    width: 12px;
    height: 12px;
    transition: background-color .25s ease-out
}

.field input[type=radio]:checked + label:after {
    background-color: #6640fe
}

.field input[type=radio]:focus + label:before {
    box-shadow: 0 0 0 1px #3b99fc, 0 0 8px #3b99fc
}

.field input[type=checkbox] {
    opacity: 0;
    position: absolute
}

.field input[type=checkbox] + label {
    padding: 0 0 0 30px;
    margin: 0;
    line-height: 1.2
}

.field input[type=checkbox] + label:before {
    content: "";
    border: 1px solid;
    height: 20px;
    left: 0;
    position: absolute;
    top: 0;
    width: 20px
}

.field input[type=checkbox] + label:after {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    background: #6640fe;
    left: 5px;
    top: 5px;
    opacity: 0;
    transition: opacity .25s ease-out
}

.field input[type=checkbox]:checked + label:after {
    opacity: 1
}

.field input[type=checkbox]:focus + label:before {
    outline: 5px auto #3b99fc
}

.field select:not([multiple]) {
    background-color: #fff;
    padding: .5em 3.5em .5em 1em;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: linear-gradient(45deg, transparent 50%, #6640fe 0), linear-gradient(135deg, #6640fe 50%, hsla(0, 0%, 100%, 0) 0), linear-gradient(90deg, rgba(12, 12, 48, .2), rgba(12, 12, 48, .2));
    background-position: calc(100% - 20px) calc(1em + 2px), calc(100% - 15px) calc(1em + 2px), calc(100% - 2.5em) .5em;
    background-size: 5px 5px, 5px 5px, 1px 1.5em;
    background-repeat: no-repeat
}

.footer {
    font-size: 14px;
    font-size: .7777777778rem;
    padding-top: 60px;
    padding-bottom: 80px;
    color: #fff;
    background-color: #0d0b30;
    border-top-right-radius: 30px
}

.footer::-moz-selection, .footer ::-moz-selection {
    color: #212121;
    background: rgba(255, 253, 119, .99)
}

.footer::selection, .footer ::selection {
    color: #212121;
    background: rgba(255, 253, 119, .99)
}

@media only screen and (min-width: 48em) {
    .footer {
        padding-top: 80px;
        padding-bottom: 120px
    }
}

@media only screen and (min-width: 64em) {
    .footer {
        margin-right: auto;
        margin-left: auto
    }
}

.heading-block + .footer {
    padding-top: 0
}

@media only screen and (min-width: 48em) {
    .footer {
        border-top-right-radius: 40px
    }
}

@media only screen and (min-width: 48em) {
    .footer__inner {
        position: relative
    }
}

@media only screen and (min-width: 64em) {
    .footer__inner {
        padding: 0 60px
    }
}

.footer__panel {
    grid-column: 2/span 10;
    display: flex;
    flex-direction: column;
    align-items: center;
    grid-row: 2;
    margin-top: 40px
}

@media only screen and (min-width: 48em) {
    .footer__panel {
        display: grid;
        grid-template-columns:repeat(3, 1fr)
    }
}

@media only screen and (min-width: 80em) {
    .footer__panel {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        grid-column: 1/span 3;
        grid-row: 1;
        margin: 0
    }
}

.footer__panel-links {
    display: flex;
    flex-direction: column
}

.footer__panel-link {
    padding: 0;
    position: relative;
    margin-bottom: 4px
}

.footer__panel-link:not(:last-child) {
    margin-bottom: 8px
}

.footer__panel-link--trustpilot {
    margin-top: 8px;
    flex-basis: 100%
}

.footer__logo {
    width: 100%;
    max-width: 180px;
    fill: #fff
}

@media only screen and (min-width: 48em) {
    .footer__logo {
        grid-row: span 2;
        margin-bottom: 20px
    }
}

@media only screen and (min-width: 64em) {
    .footer__logo {
        margin-bottom: 0
    }
}

.footer__nav-container {
    width: 100%;
    grid-column: 2/span 10
}

@media only screen and (min-width: 80em) {
    .footer__nav-container {
        flex: 1;
        width: auto;
        grid-column: 5/span 8
    }
}

.footer__nav {
    display: flex;
    flex-direction: column;
    flex-grow: grow
}

@media only screen and (min-width: 30em) {
    .footer__nav {
        display: grid;
        grid-template-columns:repeat(2, 1fr);
        margin: 0 auto;
        row-gap: 80px
    }
}

@media only screen and (min-width: 48em) {
    .footer__nav {
        grid-template-columns:repeat(3, 1fr)
    }
}

.footer__links-items {
    display: flex
}

.footer__social-links {
    display: flex;
    align-items: center;
    flex-direction: column;
    margin: 40px 0 32px
}

@media only screen and (min-width: 48em) {
    .footer__social-links {
        margin: 0;
        align-items: flex-start
    }
}

@media only screen and (min-width: 64em) {
    .footer__social-links {
        margin: 60px 0 40px
    }
}

.footer__social-link {
    fill: #fff;
    margin-right: 16px
}

.footer__social-link:hover {
    fill: #00ef9f
}

.footer__social-link:focus {
    outline: 3px solid #c2b3ff;
    outline-offset: 4px
}

.footer__social-link:focus:active {
    outline: none
}

.footer__heading {
    display: none
}

@media only screen and (min-width: 48em) {
    .footer__heading {
        display: block;
        margin: 0 20px 0 0
    }
}

.footer__credit {
    margin-top: 10px
}

@media only screen and (min-width: 48em) {
    .footer__credit {
        margin-top: 0
    }
}

.footer__credit a {
    color: #fff
}

.footer__language-picker {
    display: none;
    background: #fff;
    padding: 20px;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: 200;
    max-width: 640px;
    overflow: auto;
    box-shadow: 0 1px 3px rgba(12, 12, 48, .12), 0 1px 2px rgba(12, 12, 48, .24)
}

@media only screen and (min-width: 64em) {
    .footer__language-picker {
        position: absolute;
        top: 30em;
        right: 0;
        left: auto;
        bottom: unset;
        height: auto
    }
}

@media only screen and (min-width: 80em) {
    .footer__language-picker {
        position: absolute;
        top: 20em;
        right: unset;
        bottom: unset;
        height: auto
    }
}

.footer__language-picker.is-active {
    display: block
}

.footer__language-picker li {
    margin: 0;
    padding: 0
}

.footer__language-picker--inline .footer__language-picker-languages {
    grid-template-columns:1fr
}

@media only screen and (min-width: 48em) {
    .footer__language-picker--inline {
        max-width: 320px
    }
}

@media only screen and (min-width: 64em) {
    .footer__language-picker--inline {
        top: 35em;
        right: 0;
        left: auto
    }
}

@media only screen and (min-width: 80em) {
    .footer__language-picker--inline {
        top: 20em;
        right: unset
    }
}

.footer__language-picker-title {
    font-size: 18px;
    font-size: 1rem;
    color: #0d0b30;
    padding-bottom: 14px
}

.footer__language-picker-close {
    position: absolute;
    top: 20px;
    right: 20px;
    background: none;
    border: none;
    cursor: pointer
}

.footer__language-picker-close:focus {
    outline: 3px solid #c2b3ff;
    outline-offset: 2px
}

.footer__language-picker-close:focus:active {
    outline: none
}

.footer__language-picker-languages {
    display: grid;
    grid-column-gap: 20px;
    grid-auto-flow: dense
}

.footer__language-picker-languages--regions {
    grid-row-gap: 20px
}

@media only screen and (min-width: 48em) {
    .footer__language-picker-languages--regions {
        grid-template-columns:repeat(3, 1fr);
        grid-auto-flow: column
    }
}

.footer__language-picker-languages--regions [lang=en] {
    order: -1;
    margin-top: 0;
    grid-row: span 6
}

.footer__language-picker-languages--regions [lang=fr] {
    grid-row: span 5
}

.footer__language-picker-language-group {
    display: flex;
    margin-bottom: 20px
}

@media only screen and (min-width: 48em) {
    .footer__language-picker-language-group {
        margin-bottom: 25px
    }
}

.footer__language-picker-links {
    margin: 0;
    padding: 0;
    list-style: none;
    grid-column: span 1;
    grid-row: span 5
}

.footer__language-picker-link {
    color: #6640fe;
    grid-row: span 1;
    padding: 0;
    display: block;
    margin: 0 0 5px;
    font-weight: 600;
    text-decoration: underline
}

.footer__language-picker-link:hover {
    color: #0c0c30
}

.sidebar {
    flex: 0 0 12rem;
    margin-top: 20px
}

@media only screen and (min-width: 48em) {
    .sidebar {
        order: -1;
        margin: 0 20px 0 0
    }
}

.sidebar--filters {
    flex: 0 0 2rem;
    order: -1
}

@media only screen and (min-width: 48em) {
    .sidebar--filters {
        flex: 0 0 12rem
    }
}

.sidebar__inner {
    padding: 20px;
    background: #0d0b30
}

.u-sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0
}

.one {
    opacity: 0;
    -webkit-animation: dot 1.3s infinite;
    -webkit-animation-delay: 0.0s;
    animation: dot 1.3s infinite;
    animation-delay: 0.0s;
}

.two {
    opacity: 0;
    -webkit-animation: dot 1.3s infinite;
    -webkit-animation-delay: 0.2s;
    animation: dot 1.3s infinite;
    animation-delay: 0.2s;
}

.three {
    opacity: 0;
    -webkit-animation: dot 1.3s infinite;
    -webkit-animation-delay: 0.3s;
    animation: dot 1.3s infinite;
    animation-delay: 0.3s;
}

@-webkit-keyframes dot {
    0% {
        opacity: 0;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@keyframes dot {
    0% {
        opacity: 0;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@media only screen and (max-width: 45em) {
    .subscribe {
        visibility: hidden;
        position: relative;
        float: right;
        background-color: rgb(144, 32, 25);
        border-radius: 10px;
        border-width: 0;
        font-size: 1.5rem;
        padding: 16px 18px;
        margin: 10px;
        color: white;
    }
}

@media only screen and (min-width: 45em) {
    .subscribe {
        position: relative;
        float: right;
        background-color: rgb(144, 32, 25);
        border-radius: 10px;
        border-width: 0;
        font-size: 1.5rem;
        padding: 16px 18px;
        margin: 10px;
        color: white;
    }
}
